home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Animation How-To
/
Animation How-to CD.iso
/
PLY
/
CHAPTER5
/
TUG
/
TG.BAS
< prev
next >
Wrap
BASIC Source File
|
1994-01-01
|
1KB
|
65 lines
SCREEN 12
WINDOW (-4, -3)-(16, 12)
pi = 3.14159
FOR anglenor = 0 TO 2 * pi STEP pi / 100
fx1 = 2.5 + 5 * COS(anglenor)
fy1 = 2.5 + 5 * SIN(anglenor)
fz1 = 2.5
fx2 = 2.5 + 5 * COS(anglenor)
fy2 = 2.5
fz2 = 2.5 - 5 * SIN(anglenor)
fx3 = 2.5
fy3 = 2.5 + 5 * SIN(anglenor)
fz3 = 2.5 - 5 * COS(anglenor)
CIRCLE (fx1, fy1), .2, 1
CIRCLE (fx2, fy2), .2, 2
CIRCLE (fx3, fy3), .2, 3
f = 1
p = 2
FOR a = 1 TO 6
FOR b = 1 TO 6
FOR c = 3 TO 3
d1 = ((a - fx1) ^ 2 + (b - fy1) ^ 2 + (c - fz1) ^ 2) ^ .5
d2 = ((a - fx2) ^ 2 + (b - fy2) ^ 2 + (c - fz2) ^ 2) ^ .5
d3 = ((a - fx3) ^ 2 + (b - fy3) ^ 2 + (c - fz3) ^ 2) ^ .5
drx1 = a - fx1
dry1 = b - fy1
drz1 = c - fz1
drx2 = a - fx2
dry2 = b - fy2
drz2 = c - fz2
drx3 = a - fx3
dry3 = b - fy3
drz3 = c - fz3
f1 = f / (1 + d1 ^ p)
f2 = f / (1 + d2 ^ p)
f3 = f / (1 + d3 ^ p)
x = a + f1 * drx1 + f2 * drx2 + f3 * drx3 + f4 * drx4
y = b + f1 * dry1 + f2 * dry2 + f3 * dry3 + f4 * dry4
z = c + f1 * drz1 + f2 * drz2 + f3 * drz3 + f4 * drz4
CIRCLE (x, y), .2
NEXT c
NEXT b
NEXT a
'DO WHILE INKEY$ = "": LOOP
CLS
NEXT anglenor